/*根据需求完成代码：
1.定义狗类
属性：年龄，颜色
行为：eat（String something）（something表示吃的东西）看家lookHome方法（无参数）

2.定义猫类
属性：年龄，颜色
行为：eat（String something）方法（something表示吃的东西）逮老鼠catchMouse方法（无参数）

3.定义Person类//饲养员
属性：姓名，年龄
行为：keepPet（Dog dog,String something）方法 功能：喂养宠物狗，something表示喂养的东西
行为：keepPet（Cat cat,String something）方法 功能：喂养宠物猫，something表示喂养的东西
生成空参有参构造，set和get方法

4.定义测试类（完成以下打印效果）：
keepPet（Dog dog,String somethind）方法打印内容如下：
年龄为30岁的老王养了一只黑颜色的2岁的狗
2岁的黑颜色的狗两只前腿死死的抱住骨头猛吃
keepPet（Cat cat,String somethind）方法打印内容如下：
年龄为25岁的老李养了一只灰颜色的3岁的猫
3岁的灰颜色的猫眯着眼睛侧着头吃鱼

5.思考：
1.Dog和Cat都是Animal的子类，以上案例中针对不同的动物，定义了不同的keeppet方法，过于繁琐，能否简化，并体会简化后的好处？
2.Dog和Cat虽然都是Animal的子类，但是都有其特有方法，能否想办法在keepPet中调用特有方法？
*/
package polymorphismdemo4_practice;

public class Test {
    public static void main(String[] args) {
        /*
         * // 创建对象并调用方法
         * Person p1 = new Person("老王", 30);
         * dog d = new dog(2, "黑");
         * p1.keepPet(d, "骨头");
         * 
         * Person p2 = new Person("老李", 25);
         * cat c = new cat(3, "灰");
         * p2.keepPet(c, "鱼");
         */

        Person p = new Person("老王", 30);
        dog d = new dog(2, "黑");
        p.keepPet(d, "骨头");

        cat c = new cat(3, "灰");
        p.keepPet(c, "鱼");

    }

}
